In computing and operating systems, a stack trace (also called stack backtrace or stack traceback) is a report of the active stack frames instantiated by the execution of a program. Stack traces are commonly used to aid debugging by showing where exactly an error occurs. The last few stack frames often indicate the origin of the bug.
One way to generate a backtrace of an application is to scan the stack of the application and list all the words that look like they could be return addresses. If the word is the address of a location in the machine code of the application, then it's likely that the word is a return address. However, this method of generating stack traces has the problem that it will generate false positives whenever a word on the stack happens to look like a code pointer. Therefore, what is needed is a method to reduce the number of false positives by eliminating some words that cannot be return addresses.